Finite-Tree Analysis for Constraint Logic-Based Languages: The Complete Unabridged Version
نویسندگان
چکیده
Logic languages based on the theory of rational, possibly infinite, trees have muchappeal in that rational trees allow for faster unification (due to the safe omission ofthe occurs-check) and increased expressivity (cyclic terms can provide very efficientrepresentations of grammars and other useful objects). Unfortunately, the use ofinfinite rational trees has problems. For instance, many of the built-in and librarypredicates are ill-defined for such trees and need to be supplemented by run-timechecks whose cost may be significant. Moreover, some widely-used program analysisand manipulation techniques are correct only for those parts of programs workingover finite trees. It is thus important to obtain, automatically, a knowledge of theprogram variables (the finite variables) that, at the program points of interest, willalways be bound to finite terms. For these reasons, we propose here a new data-flow analysis, based on abstract interpretation, that captures such information. Wepresent a parametric domain where a simple component for recording finite variablesis coupled, in the style of the open product construction of Cortesi et al., with ageneric domain (the parameter of the construction) providing sharing information.The sharing domain is abstractly specified so as to guarantee the correctness ofthe combined domain and the generality of the approach. This finite-tree analysisdomain is further enhanced by coupling it with a domain of Boolean functions, calledfinite-tree dependencies, that precisely captures how the finiteness of some variablesinfluences the finiteness of other variables. We also summarize our experimentalresults showing how finite-tree analysis, enhanced with finite-tree dependencies, isa practical means of obtaining precise finiteness information.
منابع مشابه
TREE AUTOMATA BASED ON COMPLETE RESIDUATED LATTICE-VALUED LOGIC: REDUCTION ALGORITHM AND DECISION PROBLEMS
In this paper, at first we define the concepts of response function and accessible states of a complete residuated lattice-valued (for simplicity we write $mathcal{L}$-valued) tree automaton with a threshold $c.$ Then, related to these concepts, we prove some lemmas and theorems that are applied in considering some decision problems such as finiteness-value and emptiness-value of recognizable t...
متن کاملMultidimensional fuzzy finite tree automata
This paper introduces the notion of multidimensional fuzzy finite tree automata (MFFTA) and investigates its closure properties from the area of automata and language theory. MFFTA are a superclass of fuzzy tree automata whose behavior is generalized to adapt to multidimensional fuzzy sets. An MFFTA recognizes a multidimensional fuzzy tree language which is a regular tree language so that for e...
متن کاملA pr 2 00 4 Finite - Tree Analysis for Constraint Logic - Based Languages : The Complete
Logic languages based on the theory of rational, possibly infinite, trees have muchappeal in that rational trees allow for faster unification (due to the safe omission ofthe occurs-check) and increased expressivity (cyclic terms can provide very efficientrepresentations of grammars and other useful objects). Unfortunately, the use ofinfinite rational trees has problems. For inst...
متن کاملA Complete Axiomatization of Strict Equality over Infinite Trees (Extended Version) Technical Report SIC-03-2009, UCM
Computing with data values that are some kind of trees — finite, infinite, rational— is at the core of declarative programming, either logic, functional or functional-logic. Understanding the logic of trees is therefore a fundamental question with impact in different aspects, like language design, including constraint systems or constructive negation, or obtaining methods for verifying and reas...
متن کاملAlternating Regular Tree Grammars in the Framework of Lattice-Valued Logic
In this paper, two different ways of introducing alternation for lattice-valued (referred to as {L}valued) regular tree grammars and {L}valued top-down tree automata are compared. One is the way which defines the alternating regular tree grammar, i.e., alternation is governed by the non-terminals of the grammar and the other is the way which combines state with alternation. The first way is ta...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- CoRR
دوره cs.PL/0404055 شماره
صفحات -
تاریخ انتشار 2001